1. Field of the Invention
The present invention relates to an information processing apparatus, an image forming apparatus, and an electronic data movement canceling method, and, in particular, to an information processing apparatus, an image forming apparatus, and an electronic data movement canceling method for canceling processing of movement of electronic data between recording media.
2. Description of the Related Art
Recently, a multifunctional image forming apparatus (referred to as a ‘fusion machine’, hereinafter) has been provided which may function as a printer, a copier, a facsimile machine, a scanner or such as a result of a display part, a printing part, an image pickup part and so forth being provided in a single housing thereof, as well as relevant four programs enabling the machine to function as the printer, copier, facsimile machine, scanner or such being mounted therein and switching being made thereamong.
Such a fusion machine may be configured so that, in addition to the programs already mounted therein, another new function may be provided additionally as a result of an application module (simply referred to as a ‘module’ hereinafter), provided in a portable recording medium such as an SD card (which may also be called ‘SD memory card’), being read in.
A fact that a new function may be easily added by means of an SD card or such s mentioned above may provide an advantage in particular in that an extensibility of the fusion machine is improved. On the other hand, since data stored in an SD card or such may be easily referred to via another apparatus such as a PC (personal computer) or such, the module stored in the medium may be tampered by a malicious person, whereby the tampered module may rather cause a fault in the fusion machine which executes the module. Furthermore, it is necessary to avoid illegal copy of the module stored in the SD card or such.
These problems may be solved as a result of the module being recorded in the SD card in the following manner: FIG. 1 shows an example of a configuration of the module in the SD card. In the SD card 510 shown in FIG. 1, an SDID 511 and a module 512 are stored. The SDID 511 is information (ID) used for identifying each particular SD card.
The module 512 includes a module file 513, a license file 514 and so forth. The module file 513 is a file in which a function to be achieved by the module is mounted. The license file 514 is a file in which license information of the module is stored.
The module file 513 includes program data 515, a module electronic signature and so forth. The program data 515 is a module program itself. Accordingly, as a result of the program data being processed, the function of the module is achieved. The module electronic signature 516 is used to verify a validity of the program data 515. That is, when execution of the module is requested, the fusion machine digitizes the program data by means of a message digest for example, and compares the thus-obtained value with a value of the electronic signature 516. When both values do not agree with one another, the fusion machine determines that the program data 515 is improper one, and thus, rejects execution thereof.
The license file 514 includes license data 517, a license electronic signature 518 and so forth. The license data 517 is data in which license data (for example, a term of validity, a number of usable times of validity, and so forth) of the module is recorded. Accordingly, when the license is invalid, or no license file 514 exists, the program data is not executed.
The license electronic signature 518 is data used for verifying a validity of the license data 517. That is, when execution of the module is requested, the fusion machine digitizes the license data 517 and the SDID 511 according to a message digest or such, compares the thus-obtained value with a value of the license electronic signature 518, and thus, determines a validity of the license data 517. Then, when the validity of the license data 517 is thus verified properly, a validity of the license of the module is then verified based on the license data 517.
Thus, the program data 515 and the license data 517 are authenticated with the use of the module electronic signature 516 or the license electronic signature 518, and thereby, it is possible to detect a tamper of the program data 515, the license data 517 or such. Thus, it is possible to avoid execution of an improper module.
Further, as a result of the SDID 511 being used for authenticating the license data 515, a unity between the module 512 and the SD card 510 may be ensured, whereby it is possible to avoid illegal copy of the module 512. That is, even if the module 512 is copied to another SD card, it is possible to detect that the copy was thus carried out as a result of the value digitized from the license data 517 and the SDID of this other SD card being compared with the license electronic signature 518 based on the SD card 510 and the SDID 511 upon authentication of the license data 517.